# coding=UTF-8
# Autor: Thiago Rodrigues Carvalho
# Criado em: 23/10/2014
# Atenção: Desenvolvido e testando em Python 3.4 (testes com Python 2.7 mostraram erro nas linhas de try/catch)
votos = [0,0,0,0,0,0]
sO = {0:"Windows Server", 1:"Unix", 2:"Linux", 3:"Netware", 4:"Mac OS", 5:"Outro" }
total = 0
n = -1

while(n != 0):
    try:
        n=int(input("Qual o melhor Sistema Operacional para uso em servidores? Números válidas como resposta: 1- Windows Server 2- Unix 3- Linux 4- Netware 5- Mac OS 6- Outro:"))
  
    except ValueError:
        print ("O valor digitado não é um número. Nenhum valor será contabilizado.")
        n = -1
        
    if n < 0 or n > 6:
        print ("Respostas inválida. Seu voto não será contabilizado.")
    elif n != 0:
        votos[n - 1] += 1
        total += 1
        
print ("")
print ("Sistema Operacional     Votos   %")
print ("-------------------     -----   ---")
print ("Windows Server           " + str(votos[0]) + "    " + str(round(votos[0]*100/total,1)) + "%")
print ("Unix                     " + str(votos[1]) + "    " + str(round(votos[1]*100/total,1)) + "%")
print ("Linux                    " + str(votos[2]) + "    " + str(round(votos[2]*100/total,1)) + "%")
print ("Netware                  " + str(votos[3]) + "    " + str(round(votos[3]*100/total,1)) + "%")
print ("Mac OS                   " + str(votos[4]) + "    " + str(round(votos[4]*100/total,1)) + "%")
print ("Outro                    " + str(votos[5]) + "    " + str(round(votos[5]*100/total,1)) + "%")
print ("-------------------     -----")
print ("Total                    " + str(total))
print ("")

campeao = 0
votosCampeao = votos[0]

for i in range (1,6):
    if votos[i] > votos[i - 1]:
        campeao = i
        votosCampeao = votos[i]
     
print ("O Sistema Operacional mais votado foi o " + str(sO[campeao]) + ", com " + str(votosCampeao) + " votos, correspondendo a " + str(round(votosCampeao*100/total,1)) + "% dos votos.")
    